phase1:
	gcc -no-pie -o linklab main.o phase1.o

phase2:
	gcc -g -no-pie -o linklab main.o phase2.o

phase3:
	gcc -Og phase3_patch.c -c -no-pie
	gcc -no-pie -o linklab main.o phase3.o phase3_patch.o

phase4:
	gcc -g -no-pie -o linklab main.o phase4.o

phase5:
	readelf -S phase5.o > phase5.header 
	readelf -r phase5.o > phase5.rela
	readelf -s phase5.o > phase5.symtable
	objdump -rd phase5.o > phase5.s
	gcc -no-pie -o linklab main.o phase5.o
	
phase6:
	readelf -S phase6.o > phase6.header 
	readelf -r phase6.o > phase6.rela
	readelf -s phase6.o > phase6.symtable
	objdump -rd phase6.o > phase6.s
	gcc -no-pie -o linklab main.o phase6.o	
clean:
	rm linklab